package com.lyf.auth.service;

import com.lyf.auth.domain.pojo.AuthConfiguration;
import com.lyf.auth.domain.pojo.ScopeSupportApiListAccess;
import com.lyf.auth.domain.request.AddClientScopeRequestBody;
import com.lyf.auth.domain.request.AddScopeRequestBody;
import com.lyf.auth.domain.request.LoginRequestBody;
import com.lyf.auth.domain.response.LoginResponseBody;
import com.lyf.common.api.CommonResult;

import java.util.List;
import java.util.Set;

public interface AuthProviderService {
   LoginResponseBody generateJWTToken(LoginRequestBody loginRequestBody);

   CommonResult checkToken(String url, String token);

   AuthConfiguration registerAuthService(String comment, Set<String> owner) ;

   void addScope(AddScopeRequestBody addScopeRequestBody) ;

   List<ScopeSupportApiListAccess> getAllScopeInfo() ;

   AuthConfiguration addClientScope(AddClientScopeRequestBody request) ;

   AuthConfiguration setClientScope(AddClientScopeRequestBody request) ;

   AuthConfiguration getClientInfo(String clientId) ;
}
